#include "GUIImagesetManager.h"

namespace YGUI
{
    template<>
    ImagesetManager* Singleton<ImagesetManager>::m_singleton = 0;

    ImagesetManager::ImagesetManager()
    {
    }

    ImagesetManager::~ImagesetManager()
    {
    }

    ImagesetManager& ImagesetManager::getSingleton(void)
    {
        static ImagesetManager instance;
        return (*m_singleton);
    }

    ImagesetManager* ImagesetManager::getSingletonPtr(void)
    {
        if(!m_singleton)
            getSingleton();
        return m_singleton;
    }

    bool ImagesetManager::isImagesetExists(const std::string& name) const
    {
        return (m_imagesets.find(name) != m_imagesets.end());
    }

    Imageset* ImagesetManager::getImageset(const std::string& name) const
    {
        ImagesetDepot::const_iterator it = m_imagesets.find(name);
        if(it == m_imagesets.end())
            return 0;
        return it->second;
    }
};